{$R-}                             {Range checking off}
{$B+}                             {Boolean short circuiting off}
{$S-}                             {Stack checking off}
{$I-}                             {I/O checking off}
{$V-}                             { disable string parameter type checking - faster }


UNIT RUNPART2;

INTERFACE

USES
  Crt,
  Dos,
  Graph3,
  Turbo3,
  RUNPART1;


PROCEDURE CheckParams;

PROCEDURE TELL(noun, object_word : words);

PROCEDURE ASK(noun, object_word : words);

FUNCTION Is_Or_Are(num : Integer) : words;

PROCEDURE List_Exits(rm : Integer);

PROCEDURE Help;

PROCEDURE Detach(num : Integer);
  {Make object num's position = none,
  i.e., it is no longer "in", "near", "on", etc. some other object}

PROCEDURE Take(noun : words);

PROCEDURE Wear(noun : words);

PROCEDURE Throw(noun, prep, object_word : words);

PROCEDURE Put(noun, prep, object_word : words);

PROCEDURE Open_Noun(noun, prep, object_word : words);

PROCEDURE Close_Noun(noun : words);

PROCEDURE Shoot(noun, prep, object_word : words);

PROCEDURE Unlock(noun, prep, object_word : words);

PROCEDURE Lock(noun, prep, object_word : words);

PROCEDURE Eat(noun : words);

PROCEDURE Drink(noun : words);

PROCEDURE Inventory;

PROCEDURE Read_Noun(noun : words);

PROCEDURE light(noun : words);

PROCEDURE Extinguish(noun : words);

PROCEDURE Quit;

PROCEDURE show_score;

FUNCTION ScoreValue : Integer;

PROCEDURE Do_Nothing;

PROCEDURE Scream;

PROCEDURE Script;

PROCEDURE UNScript;

PROCEDURE Resurrect;

PROCEDURE ChangeDriveDirectory;

PROCEDURE Save;

PROCEDURE Restore;

PROCEDURE ReadFinalVersion;

PROCEDURE SetColors(Sen : s);

PROCEDURE Title;

  {===========================================================================}

IMPLEMENTATION

  {$I PARAM.PA4 }

  {$I EXECSUBS.PA4 }

  {$I SAVEREST.PA4 }

  {$I FINAL.PA4 }

  {$I TITLE.PA4 }

END.
